<?php

/**
 * Entité modèle : Table des tags
 * Représente l'ensemble des tags disponibles
 * 
 * <b>Structure :</b>
 * <ul>
 *  <li>id</li>
 *  <li>label</li>
 * </ul>
 * 
 * @author Cyril Souti
 * @version 1.0
 * @package models
 *
 */
class Models_Content_Tag extends Models_TableGite
{
	protected $_name = 'content_tag';
	protected $_dependentTables = array(Models_Content_ImageTag::CLASS_NAME);
	
	const CLASS_NAME = 'Models_Content_Tag';
	
	const SQL_SELECT_TAG = 'label= ?';
	const SQL_CLAUSE_ACTIF = 'actif = ?';
	const SQL_ORDER = 'position ASC';
	
	/**
	 * Retourne les images du tag
	 * 
	 * @param string $tag
	 * @return Zend_Db_Table_Row des images
	 */
	public function getRowTag($tag) {
		$selectTag = $this->select()->where(self::SQL_SELECT_TAG, $tag);
		return $this->fetchRow($selectTag);
	}
	
	public function getTags() {
		return $this->fetchAll();
	}
	
	public function getTagsActifs() {
		$selectTagsActifs = $this->select()->where(self::SQL_CLAUSE_ACTIF, true)->order(self::SQL_ORDER);
		$tagsActifs = $this->fetchAll($selectTagsActifs);
		return $tagsActifs ;
	}
}